package com.zhijian.warehouse.manage.entity.po;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import javax.validation.constraints.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 仪器领用归记录
 * @author Auto Generator
 * @date 2024-10-28 17:42:45
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Api(tags = "仪器领用归记录")
public class AccessProductRecord {
    /**
     * 主键自增
     */
    @ApiModelProperty("主键自增")
    private Long id;

    /**
     * 领用单号
     */
    @ApiModelProperty("领用单号")
    @NotBlank(message = "领用单号不能为空")
    private String drawNumber;

    /**
     * 归还单号
     */
    @ApiModelProperty("归还单号")
    private String backNumber;

    /**
     * 产品id
     */
    @ApiModelProperty("产品id")
    @NotNull(message = "产品id不能为空")
    private Long productId;

    /**
     * 领用人id
     */
    @ApiModelProperty("领用人id")
    @NotNull(message = "领用人id不能为空")
    private Long drawUserId;

    /**
     * 领用时间 yyyy-MM-dd
     */
    @ApiModelProperty("领用时间 yyyy-MM-dd HH:mm:ss")
    @NotBlank(message = "领用时间 yyyy-MM-dd不能为空")
    private String drawTime;

    /**
     * 归还人id
     */
    @ApiModelProperty("归还人id")
    private Long backUserId;

    /**
     * 归还时间 yyyy-MM-dd
     */
    @ApiModelProperty("归还时间 yyyy-MM-dd HH:mm:ss")
    private String backTime;

    @ApiModelProperty("领用天数 单位 天")
    private Integer drawDay;

    @ApiModelProperty("延长天数")
    private Integer extendDay;

    @ApiModelProperty("计划归还时间 yyyy-MM-dd HH:mm:ss")
    private String planBackTime;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String msg;

    /**
     * 1= 领用 2 = 归还
     */
    @ApiModelProperty("1= 领用 2 = 归还")
    @NotNull(message = "1= 领用 2 = 归还不能为空")
    private Integer type;



    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @NotNull(message = "创建时间不能为空")
    private Date createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @NotNull(message = "更新时间不能为空")
    private Date updateTime;
}
